package com.huang.jedis;

import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

/**
 * @Author: huanghwh
 * @Date: 2021/12/4 上午10:45
 */
public class JedisLink {

    public static void main(String[] args) {

        // new Jedis 对象，设置连接信息
        Jedis jedis = new Jedis("127.0.0.1", 6379);

        // 测试是否连接成功
        String ping = jedis.ping();
        System.out.println(ping); // 返回pong表示连接成功

        // 执行指令 与redis命令相同，与spring的redisTemplate相比更加直观，且可以执行更多操作，如setnx，lset等
        jedis.set("key1", "value1");
        Long setnx = jedis.setnx("key1", "value1");
        System.out.println(setnx);
        Long setnx2 = jedis.setnx("key2", "value1");
        System.out.println(setnx2);

        // 判断key是否存在,删除
        System.out.println(jedis.exists("key2"));
        jedis.del("key2");
        System.out.println(jedis.exists("key2"));

        // list
        jedis.lpush("listKey", "value1");
        jedis.lpush("listKey", "value2");
        List<String> listKey = jedis.lrange("listKey", 0, -1);
        System.out.println(listKey);

        // 查看所有key
        Set<String> keys = jedis.keys("*");
        System.out.println(keys);

        // 关闭
        jedis.close();
    }

}
